/**************************************************************************************
 *
 * @(#) Content.java
 * @Package com.jgdt.jgdtkasannong_university_gene_backend.controller
 **************************************************************************************/
package com.jgdt.jgdtkasannong_university_gene_backend.controller.job;

import com.jgdt.jgdtkasannong_university_gene_backend.aspect.idempotent.ApiIdempotent;
import com.jgdt.jgdtkasannong_university_gene_backend.biz.content.BaseBiz;
import com.jgdt.jgdtkasannong_university_gene_backend.common.Sysconstant;
import com.jgdt.jgdtkasannong_university_gene_backend.common.response.ResultVo;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;


/**
 * @description: 定时任务-控制层
 * @author: huangAn
 * @createDate: 2025/04/24
 */
@Tag(name = "定时任务",description = "定时任务")
@RestController
@RequestMapping("/api/job/task")
@Slf4j
public class JobTaskController {

    @Autowired
    private BaseBiz baseBiz;

    /**
     * 同步通道信息-系统所有设备序列号通道信息
     * @return
     */
    @Operation(summary = "同步通道信息-系统所有设备序列号通道信息", description = "同步通道信息-系统所有设备序列号通道信息")
    @GetMapping("/syncChannelYsy")
    @ApiIdempotent(value = "同步通道信息-系统所有设备序列号通道信息-幂等处理"
            ,apiNameCode = Sysconstant.IDEMPOTENT_APINAMECODE_TASK_SYNC_CHANNEL_YSY
            ,idempotentTime = 10,apiErrMsg = "请勿频繁操作!请在10秒后重试！")
    public ResultVo<?> syncChannel() throws Exception {
        try {
            //同步萤石云所有通道
            baseBiz.syncChannel();
        }catch (Exception e){
            log.error("syncChannelYsy error:"+e.getMessage());
            return ResultVo.fail("同步通道信息-系统所有设备序列号通道信息,err:"+e.getMessage());
        }
        return ResultVo.success("同步通道信息-系统所有设备序列号通道信息,成功");
    }
}




